home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d23
/
tbscan20.arc
/
TBSCAN.DUT
< prev
next >
Wrap
Text File
|
1991-02-08
|
39KB
|
817 lines
Documentatie voor TbScan v2.0
Reglementen met betrekking tot gebruik en distributie van TbScan
----------------------------------------------------------------
Het programma TbScan alsmede de begeleidende documentatie is
FREE-WARE. Dit betekent kortweg dat het programma onder de
copieerrechten van ESaSS valt, maar gratis gebruikt en verspreid
mag worden zolang onderstaande regels in acht worden genomen:
+ Het programma mag door iedereen worden gebruikt, ook door
commerciele instanties zoals bedrijven.
+ Voor de distributie en verspreiding van het TbScan programma
mogen geen administratie en/of verzendkosten worden berekend
die het bedrag van Fl 7,50 overschrijden.
+ Het programma mag niet worden geleverd tesamen, of als deel van
een commercieel pakket.
+ Verspreiding van het programma mag alleen geschieden indien
zowel het programma als de documentatie ongewijzigd zijn, en
mits het gehele pakket wordt geleverd. Het programma mag dus
niet los van deze documentatie worden verspreid.
+ ESaSS aanvaart geen enkele verantwoordelijkheid voor het niet
of slecht functioneren van het programma.
+ ESaSS kan nimmer aansprakelijk worden gesteld voor schade,
direct of indirect voortvloeiende uit het gebruik van TbScan.
+ Gebruik van TbScan betekent dat u accoord gaat met deze
bepalingen.
Beschrijving TbScan
-------------------
TbScan is een programma dat werd gemaakt om virussen, Trojan Horses
en andere bedreigingen van uw kostbare gegevens op te sporen en te
identificeren. Het is een zogenaamde virusscanner.
Een virusscanner is een programma dat naar een vooraf bepaalde
tekenreeks in programma's kan zoeken. De meeste virussen bestaan
uit een unieke tekenreeks, zodat we aan het al dan niet voorkomen
van de tekenreeks kunnen zien of een programma is besmet.
Door alle programmabestanden op uw machine af te zoeken naar de
tekenreeksen van alle reeds geidentificeerde virussen kan op een
eenvoudige manier worden vastgesteld of uw systeem is besmet en zo
ja, met welk virus.
Er bestaan inmiddels veel virusscanners. TbScan heeft echter een
aantal belangrijke unieke eigenschappen. Deze eigenschappen zijn:
+ TbScan doet zijn werk razendsnel.
De meeste virusscanners zijn helaas geen snelheidsmaniakken.
Het is belangrijk dat een virusscanner zo snel mogelijk klaar
is, omdat u nou eenmaal tot de mensen behoort die geen zin
hebben om een kwartier lang naar een beeldscherm te gaan zitten
staren. Kost het draaien van een programma te veel tijd, dan
wordt dat programma gewoon minder vaak gedraaid. En de beste
virusscanner is nu eenmaal waardeloos als u hem niet gebruikt.
Er is daarom speciale aandacht besteed aan de snelheid van het
programma. Het resultaat is dat TbScan gemiddeld tien maal
sneller zijn werk doet dan andere virusscanners.
Deze fabelachtige snelheid wordt bereikt dankzij vier
maatregelen:
1) Het programma is geheel in assembler geschreven.
2) Het programma gebruikt de verouderde doch snellere FCB
functies van DOS.
3) De signature-zoek routine is zeer geoptimaliseerd en maakt
gebruik van speciale algoritmen.
4) Het programma leest niet het gehele bestand, maar slechts
het deel waarin virussen zouden kunnen voorkomen. Dit kan
veilig gebeuren dankzij een ingebouwde interpreter die
uitzoekt hoe een programma is opgebouwd. Achterin dit
bestand kunt u meer lezen over deze interpreter.
+ TbScan kan buiten reeds in het geheugen actief zijnde virussen
om werken. Dit via een ingebouwde automatische debugger!
Veel virussen zijn geheugenresident, wat wil zeggen dat ze zich
in het geheugen van uw machine nestelen. Daar kunnen ze een
grote macht uitoefenen over alle draaiende programma's. Er
bestaan inmiddels virussen die een programmabestand
onmiddellijk "desinfecteren" zodra er gepoogd wordt het in te
lezen. Een virusscanner die een programmabestand ter controle
inleest constateert dan (op dat moment terecht) dat het bestand
niet geinfecteerd is. Nadat het is ingelezen wordt het
programmabestand echter weer direct besmet. Kortom,
virusscanners melden dat uw machine geen virus heeft opgelopen,
terwijl het er wel degelijk is.
TbScan biedt een unieke oplossing voor dit probleem: Het bezit
een automatische debugger die tijdens het opstarten zich
"single stepping" door de interrupt keten heen werkt tot het de
DOS programmacode bereikt. Het slaat het dan gevonden adres op
en gebruikt daarna voor het inlezen van bestanden dit adres.
Virussen zullen dan ook niets te zien krijgen van de
handelingen die TbScan verricht.
+ TbScan is volledig programmeerbaar door middel van een
databestand.
Virussen verspreiden zich vaak snel. Er is vaak geen tijd om na
de ontdekking van een nieuw virus een virusscanner om te bouwen
zodat het ook dit nieuwste virus herkent. Daarom gebruikt
TbScan een databestand waarin de tekenrijen van de virussen
staan. Dit bestand kan snel worden aangepast, eventueel door u
zelf naar aanleiding van een bericht via de media. TbScan
ondersteunt onder andere het formaat dat wordt gebruikt in het
bestand "virscan.dat". Dit bestand wordt regelmatig aangepast
en is op veel databanken te verkrijgen.
+ TbScan ondersteunt jokers in de zoekreeks.
Veel virussen versleutelen zichzelf, zodat de tekenreeks er
iedere keer anders uitziet. Er is echter een deel van het virus
dat niet kan worden versleuteld: de routine die het
versleutelde deel van het virus moet "uitpakken".
Het is echter een misvatting dat dit deel van het virus er
altijd hetzelfde uit zou moeten zien. Er zijn namelijk virussen
die de uitpak-routine doorspekken met zinloze (en geen effect
sorterende) instructies, die ze iedere keer vervangen door
andere onzinnige instructies. Hoewel de uitpak-routine
functioneel altijd hetzelfde blijft ziet het er door die
veranderende nep-instructies niet altijd hetzelfde uit!
Door in de tekenrij in het databestand op de plaatsen waar de
nep-instructies voorkomen jokers te plaatsen kan een dergelijk
virus toch worden opgespoord en geidentificeerd. Op de plaats
van de joker mag namelijk een willekeurig teken voorkomen.
Ook is het mogelijk een variabel aantal tekens over te laten
slaan in de zoekreeks.
+ TbScan ondersteunt gewone tekst als zoekreeks.
De meeste tekenreeksen worden in ASCII-HEX ingegeven. U kunt
echter indien u dat wenst ook een gewone tekst als zoekreeks
opgeven. U plaatst de tekst dan tussen dubbele quotes: ["].
+ TbScan kan ook het geheugen van uw PC afzoeken naar virussen.
Mochten er in de toekomst nog slimmere virussen losbarsten die
om wat voor reden niet meer in een programmabestand zijn terug
te vinden dan biedt TbScan de mogelijkheid ze in het geheugen
van uw PC zelf op te sporen. U weet dan in ieder geval of uw PC
besmet is met een bepaald virus.
+ TbScan zoekt ook in de partitietabel van de vaste schijf. Een
aantal virussen verkiest deze plek als verblijfplaats. Niet
alle virusscanners zoeken in de partitietabel.
Gebruik van het programma
-------------------------
TbScan is eenvoudig in het gebruik. De syntaxis is als volgt:
TBSCAN [<pad>][<bestandsnaam>]... [<opties>]...
Het station en pad geven aan vanaf waar moet worden gezocht. Om de
gehele schijf C: en schijf D: af te zoeken geeft u in:
TBSCAN C:\ D:\
Indien GEEN bestandsnaam wordt opgegeven maar slechts een drive
en/of pad dan wordt dat pad als start pad gebruikt. Alle
subdirectories worden ook geinspecteerd.
Wordt echter WEL een bestandsnaam opgegeven dan wordt slechts in de
opgegeven directory gezocht. Subdirectories worden niet behandeld.
In de bestandsnaam mag gebruik worden gemaakt van "wildcards". Zo
is het toegestaan om "*.*" in te geven. Alle uitvoerbare bestanden
(bestanden met de uitgang .EXE, .COM, .SYS, .OV?) worden nu
geinspecteerd. Indien u ook de niet-uitvoerbare bestanden wilt
laten doorzoeken dan dient u in combinatie met de bestandsnaam de
"/a" optie te gebruiken. "TBSCAN TEST.DAT" heeft altijd tot
resultaat dat geen enkel bestand wordt behandeld: test.dat is geen
uitvoerbaar bestand. Gebruik in dit geval dus de /a parameter.
De volgende opties zijn beschikbaar:
-h = help, toon de helptekst.
-f <filename> = gebruik het opgegeven signature bestand.
-q = quiet mode. Toon geen bestandsnamen.
-v = vertoon de startadressen.
-m = Geef een "More prompt".
-d = directe DOS- en BIOS aanroep.
-a = gedwongen "analyze".
-s = sla bootsector en partition table over.
-r = zoek niet naar geheugen residente virussen.
+r = zoek naar alle virussen in het geheugen.
-l [<filename>] = maak een log-bestand.
+l [<filename>] = voeg toe aan log-bestand.
-n = zoek niet in subdirectories.
+n = zoek altijd in subdirectories.
-u = ongeauthorizeerde handtekeningen toegestaan.
-F Met deze optie kunt u de bestandsnaam van het signaturebestand
opgeven.
-Q Normaal laat TbScan ieder bestand zien dat het controleert,
samen met de gebruikte methode. Wanneer u echter deze optie
opgeeft ziet u slechts een teller lopen wanneer TbScan werkt.
Besmette bestanden worden uiteraard WEL op het scherm getoond.
-V Indien deze optie wordt opgegeven laat TbScan de positie in het
te scannen bestand zien waar het de stabiele uitvoerbare code
heeft gevonden. Dit is het gebied dat wordt afgezocht op
virussen.
-M Indien u de parameter -M opgeeft stopt TbScan nadat het een
scherm vol bestanden heeft afgewerkt. Dit om u de gelegenheid
te geven het resultaat te bekijken. (Het programma houdt
uiteraard rekening met de door u gebruikte schermlengte).
-A TbScan gebruikt normaal alleen de analyze methode indien het te
controleren programma te ingewikkeld is voor de ingebouwde
interpreter. U kunt echter via de -A optie TbScan dwingen
altijd de Analyze methode te gebruiken. Bedenk wel dat het
programma daar een stuk trager van wordt.
Wanneer er geen bestandsnaam is opgegeven worden alleen
uitvoerbare bestanden geanalyseerd. Is echter WEL een
bestandsnaam opgegeven dan worden alle passende bestanden
geinspecteerd, ongeacht de uitgang van het bestand. Bovendien
wordt in dat geval gezocht naar elk virus in de lijst, ongeacht
het type bestand.
-D TbScan communiceert normaal gesproken met DOS via interrupt
21h. Om "afluisteren" door virussen te voorkomen kan de -D
optie worden opgegeven. TbScan gebruikt dan zijn ingebouwde
debugger om zich door de interruptketen heen te werken tot het
het DOS startpunt heeft bereikt. Het gevonden startpunt wordt
op het scherm getoond, en vanaf dat moment gebruikt voor de
communicatie met DOS. Hetzelfde geldt voor de disks: TbScan
zoekt eerst het BIOS ingangs-adres, en pleegt rechtstreekse
calls daar naar toe. Residente programma's, waaronder virussen,
zijn dan buitengesloten van deelname aan het virusscan-process.
Dit impliceert echter dat ook de gewone residente programma's
in onwetendheid blijven ten aanzien van de bestandsbenadering
door TbScan. Gebruik daarom deze optie niet wanneer u een
multitasker gebruikt of aangesloten bent op een netwerk.
Bedenk ook dat veel beveiligingspakketten door TbScan worden
omzeild. Wees niet verrast wanneer het programmatuur scant in
directories waar u eigenlijk geen toegang toe heeft...
Wanneer u deze optie wel gebruikt roep dan geen residente
programma's naar de voorgrond zolang TbScan actief is!
Residente programma's kunnen dan immers niet weten dat er
bestands-IO gaande is.
Het gebruik van zogenaamde cachers vormt geen belemmering voor
het gebruik van de -D optie.
Indien u de Thunderbyte kaart in uw PC heeft geinstalleerd zal
TbScan niet zoeken naar het DOS startpunt, maar naar het
Thunderbyte startpunt. Anders zou deze optie (terecht) de
waarschuwing van Thunderbyte uitlokken dat een programma DOS en
het BIOS rechtstreeks aanroept. Thunderbyte blijft dus als
enige tussen TbScan en DOS/BIOS zitten.
-S Met deze optie laat u het zoeken naar virussen in de bootsector
van uw schijf overslaan.
-R Met deze optie voorkomt u dat TbScan ook in het geheugen van uw
PC naar virussen zoekt.
+R Wanneer u deze optie opgeeft zoekt TbScan naar alle virussen in
het geheugen van uw PC.
-L Wanneer u deze parameter gebruikt maakt TbScan een LOG-bestand
aan. Dit bestand krijgt standaard de naam "TBSCAN.LOG". Het is
echter mogelijk zelf een bestandsnaam op te geven. In dit
LOG-bestand wordt een opsomming gegeven van alle besmette
programmabestanden. De bestandsnamen worden genoemd met de
volledige padnaam.
+L Deze optie is hetzelfde als de -L optie, alleen wordt nu de
log-informatie toegevoegd aan een reeds bestaande logbestand in
plaats van dat het oude logbestand wordt overschreven.
-N TbScan zoekt normaal ook naar uitvoerbare bestanden in
subdirectories, behalve wanneer een naam van het te scannen
bestand wordt opgegeven. Wanneer u deze optie gebruikt zal
TbScan nooit zoeken in subdirectories.
+N Wanneer u deze optie gebruikt zoekt TbScan altijd in
subdirectories, dus ook wanneer u een te scannen bestandsnaam
(al dan niet met wildcards) opgeeft. Alleen subdirectories die
voldoen aan de opgegeven specificatie worden doorzocht.
-U TbScan controleert het handtekeningenbestand op "echtheid".
Indien het bestand is gewijzigd geeft TbScan een waarschuwing.
Indien u geen prijs stelt op de waarschuwing gebruik dan de
optie -u
VOORBEELDEN:
TBSCAN \ -s
Behandel alle uitvoerbare bestanden in de hoofd-directory
en diens sub-directories. Sla de bootsector over.
TBSCAN \*.*
Behandel alle uitvoerbare bestanden in de hoofd-directory.
Zoek niet in sub-directories.
TBSCAN test.dat -l c:\test.log
Er wordt geen bestand doorzocht. TEST.DAT is geen
uitvoerbaar bestand. Er wordt een LOG bestand gemaakt met
de naam c:\test.log
TBSCAN test.dat test.tmp -a
Zoek in TEST.DAT en TEST.TMP naar ALLE virussen.
TBSCAN C:\ -a
Behandel alle uitvoerbare bestanden in de hoofd-directorie
en diens sub-directories. Gebruik de analyze methode.
TBSCAN C:\*.* -a
Behandel ALLE bestanden in de hoofd-directory. Zoek naar
ALLE virussen in ALLE bestanden. De analyze methode wordt
gebruikt. Er wordt niet in sub-directories gezocht.
Uit de twee laatste voorbeelden komt het verschil in de gedragingen
van de -A optie in combinatie met een bestandsnaam duidelijk naar
voren.
Indien u bepaalde opties altijd gebruikt kan het handig zijn om de
omgevingsvariable "TBSCAN" te gebruiken. Indien u bijvoorbeeld
altijd de optie -s gebruikt kunt u de volgende regel in uw
autoexec.bat opnemen:
SET TBSCAN=-S
TbScan gedraagt zich in dit geval altijd alsof de -S optie op de
commandoregel was opgegeven!
TbScan zoekt op de volgende wijze naar het databestand:
1) Het gebruikt het bestand dat is opgegeven m.b.v. de -F optie.
2) Het kijkt of het in de actieve directory een bestand met de
naam "TBSCAN.DAT" kan vinden.
3) Het zoekt naar "TBSCAN.DAT" in de zelfde directory als waar
het programmabestand "TBSCAN.COM" zelf staat (alleen DOS 3+).
4) Het zoekt in de actieve directory naar een bestand met de naam
"VIRSCAN.DAT"
Zolang TbScan geen besmette programma's heeft gevonden ziet u
slechts een lijst met alle bestanden op het scherm voorbijkomen, of
slechts een teller lopen indien de -Q optie is opgegeven. Zodra er
een besmet programma is gevonden wordt (ongeacht het gebruik van de
-Q optie) de naam van het besmette programma afgedrukt, evenals de
naam van het virus.
Achter iedere bestandsnaam ziet u een van de drie termen
"Scanning", "Tracing", "Analyzing" staan. Dit geeft de wijze aan
waarop het bestand wordt gecontroleerd.
Achter deze termen ziet u afhankelijk van de grootte, de bouw, en
het soort bestand een aantal plusjes verschijnen. Deze geven aan
hoe vaak er een compleet stuk van het bestand, bootsector, of
geheugen afgezocht is naar virussen.
Het proces kan worden afgebroken door Escape of Ctrl-C in te
toetsen.
Opmaak van het databestand
--------------------------
Het databestand (met de naam "TBSCAN.DAT" of "VIRSCAN.DAT") kan met
iedere ASCII-editor gelezen en/of gewijzigd worden.
Alle regels die beginnen met het teken ";" zijn commentaarregels.
TbScan negeert deze regels volkomen. Wordt het teken ";" gevolgd
door een procentteken dan wordt de rest van de regel op het scherm
afgedrukt. Er kunnen maximaal 15 regels worden afgedrukt op het
scherm. Handig for "HOT NEWS"...
Als eerste regel wordt de naam van een virus verwacht. De tweede
regel bevat dan een of meer van de volgende woorden:
BOOT SYS EXE COM HIGH LOW
Deze woorden mogen worden gescheiden door spaties, tabs, of komma's.
BOOT geeft aan dat het virus een BOOT-sector virus is. SYS, EXE,
en COM geven aan dat het virus in bestanden met de genoemde
uitgangen kan voorkomen. Overlay bestanden (bestanden met de
uitgang .OV?) worden doorzocht op EXE virussen. HIGH geeft aan dat
het virus in het geheugen van de PC kan voorkomen, en wel in het
geheugen BOVEN het TbScan programma zelf. LOW geeft aan dat het
virus in het geheugen van de PC kan voorkomen, en wel in het
geheugen ONDER het TbScan programma zelf.
Als derde regel wordt de tekenreeks in ASCII-HEX verwacht. Ieder
virusteken wordt beschreven door middel van twee tekens. In plaats
van twee hex-tekens mogen ook twee vraagtekens voorkomen. Dat
laatste betekent dan dat het teken op die positie door het virus
gewijzigd kan worden en elk teken dus voldoet. Een tekenreeks kan
er dus als volgt uitzien:
A5E623CB??CD21??83FF3E
Ook kunt u het sterretje gevolgd door een byte gebruiken om een
aantal tekens in de zoekreeks over te laten slaan. De byte bestaat
uit een ASCII-HEX teken, en geeft het aantal tekens dat
overgeslagen kan worden. Een tekensreeks kan er dus als volgt
uitzien:
A5E623CB*3CD2155??83FF3E
De volgende tekenreeks wordt dan als virus herkend:
A5E623CB142434CD21554583FF3E
In plaats van een tekenreeks in ASCII-HEX kunt u ook een gewone
tekst opgeven. Deze dient dan wel tussen dubbele aanhalingstekens
geplaatst te worden. Een geldige tekenreeks is:
"Ik heb je te pakken!"
Deze opeenvolging van drie regels dient voor ieder virus te worden
herhaald. Tussen alle regels mogen commentaarregels voorkomen.
Zie verder het databestand.
Limieten:
---------
+ 128Kb aan vrij geheugen is minimaal vereist.
+ DOS versie vanaf 2.0 is vereist.
+ De lengte van het databestand mag maximaal 64Kb bedragen.
+ De naam van een virus mag 30 tekens lang zijn.
+ De ASCII-HEX tekenreeks mag maximaal 80 tekens lang zijn.
+ Er mogen tot 500 verschillende signatures worden opgegeven.
+ Directories mogen tot vijftien nivo's diep gaan.
Foutmeldingen
-------------
De volgende foutmeldingen kunnen voorkomen:
+ Not enough memory
Er is niet genoeg geheugen vrij om te kunnen scannen.
+ Error in data line at line <nummer>
Er zit een fout in het databestand op de vermelde regel.
+ Failed to find DOS entry point.
TbScan heeft het DOS entry point niet kunnen vinden, maar gaat
gewoon door alsof de optie /D niet was opgegeven.
+ Error reading bootsector
De bootsector was niet leesbaar, en wordt niet gecontroleerd.
+ Limit exceeded
Het databestand was te lang, of er staan te veel
virus-signatures in.
+ Data file not found
TbScan kon het databestand niet vinden.
+ Commandline error
Er is een verkeerde parameter aan TbScan opgegeven.
+ No matching files found.
Het opgegeven pad bestaat niet, is leeg, of de opgegeven
bestandsnaam bestaat niet.
+ No matching executable files found.
Het opgegeven pad bestaat niet, is leeg, de opgegeven
bestandsnaam bestaat niet of is geen uitvoerbaar bestand.
TbScan wordt beeindigd met een van de volgende exitcodes:
Errorlevel 2 indien geen bestanden gevonden of command line fout.
Errorlevel 1 indien er besmette bestanden zijn aangetroffen.
Errorlevel 0 indien alles goed gegaan is.
De interpreter
--------------
Dit deel van de documentatie kunt u gerust overslaan. Het biedt
slechts informatie aan programmeurs die willen weten waarom en hoe
de bestandsinterpreter van TbScan werkt.
Virussen kunnen programmabestanden slechts op bepaalde manieren
besmetten. Voor een virus is er slechts een enkel punt in een
programmabestand waarvan het zeker weet dat dat altijd wordt
uitgevoerd, namelijk het startpunt van het programma. Over alle
andere plaatsen kan het niets zeggen, en zal daarom dan ook niet
proberen om op een willekeurige plaats van het te besmetten
programma zijn eerste code te plaatsen. Het virus zal hoe dan ook
MINSTENS een jump op het startpunt van het programma moeten zetten.
TbScan gebruikt deze wetenschap om het aantal bytes dat van een
bestand ingelezen moet worden zoveel mogelijk te beperken. Het
bepaalt op dezelfde wijze als de loader van DOS zelf waar het
startpunt van het programma is. (Vooraan in een .COM bestand, en op
een adres gespecificeerd in de EXE-header van een .EXE bestand.)
Dit is echter niet voldoende: Er kan op het gevonden beginpunt van
het programma ook een jump staan, of een andere branch-instructie.
TbScan volgt deze jump, net zo lang tot het geen jump meer
tegenkomt. We hebben dan het echte startpunt gevonden van het
programma, of indien geinfecteerd, het virus. Het kan echter
voorkomen dat TbScan op een gegeven moment aan het einde van de
ketting van jump's is terechtgekomen, maar ziet dat er op korte
afstand van de gevonden startpositie weer nieuwe significante IP
wijzigende instructies (call's, ret's, iret's, jump's>512 etc.)
staan. Wijst nu die toekomstige jump naar de viruscode, of zijn we
al op de goede plek? TbScan neemt geen risico en gaat in zo'n geval
het gehele bestand inlezen en controleren op virussen. Alleen
indien het er zeker van is dat het het echte startpunt van een
bestand heeft gevonden, en daar minimaal 20 bytes aaneengesloten
code staat (de code is dan "stabiel"), neemt het genoegen met
controle van de eerste 3Kb van die gevonden code. (Praktisch alle
virussen zijn kleiner dan 3Kb, en van de virussen die groter zijn
dan 3Kb wordt de tekenreeks in de eerste 3Kb van het virus als
herkenningsreeks genomen.)
Een leuk voordeel van deze interpreter is dat het aantal keren dat
vals alarm wordt gegeven kleiner wordt. Hierdoor kunnen de
tekenreeksen korter worden gehouden dan gebruikelijk was, iets wat
wenselijk is omdat de niet versleutelde delen van de virussen
steeds korter worden.
De werking van de interpreter is duidelijk te zien: Achter iedere
programmanaam verschijnt de gebruikte methode. Deze zijn:
1) Scanning. Dit betekent dat TbScan met succes het startpunt van
het programma heeft kunnen vaststellen, en dat de daar gevonden
code stabiel was.
2) Tracing. Dit betekent dat TbScan een ketting bestaande uit
minimaal 1 jump heeft gevolgd vanaf het entry-point. De
uiteindelijke code was stabiel. Deze methode zal met name bij
TSR programma's veelvuldig worden gevolgd: Deze beginnen
namelijk meestal met een JUMP.
3) Analyzing. TbScan was er niet volledig zeker van waar het
startpunt van het programma lag, omdat het geen stabiele code
aantrof op de gevonden positie. Veiligheidshalve wordt het
gehele bestand ingelezen en nader onderzocht. Bestanden met de
uitgang ".SYS" worden altijd volgens deze methode afgezocht.
Uiteraard kunt u via de -A optie TbScan dwingen om ALTIJD de
analyze methode te volgen indien u dat wenst.
Noot: De meeste virussen zullen gevonden worden in een bestand dat
volgens de analyze methode is afgezocht. Dit betekent echter niet
dat deze methode betrouwbaarder is dan de andere, maar is een
gevolg van het feit dat een virus dat in een programma zit meestal
als eerste zichzelf gaat reloceren (CS/IP verhouding aanpassen).
Dit gaat altijd gepaard met een CS en IP wijzigende instructie,
waardoor TbScan vanzelf (terecht) concludeert dat de code niet
stabiel genoeg is. Een besmet programma zal dan ook vaak met behulp
van de analyze methode worden behandeld, juist dankzij de
aanwezigheid van dat virus!
Thunderbyte
-----------
Virusscanners kennen een aantal zeer grote nadelen:
+ Ze kunnen geen besmetting voorkomen.
Virusscanners kunnen slechts vertellen of uw systeem besmet is
of niet, en als uw systeem inderdaad besmet is is er al schade
ontstaan. Alleen een goede backup kan u dan nog redden.
+ Ze kunnen slechts reeds geidentificeerde virussen herkennen.
Wanneer er een nieuw virus gelanceerd wordt duurt het een
tijdje voor het door iemand wordt ontdekt. Daarna duurt het nog
even voordat er een betrouwbare tekenreeks uit het virus is
gedestilleerd, en vervolgens duurt het nog een tijd voordat u
de laatste virscan.dat in huis heeft. Al met al loopt u een
reele kans dat u systeem wordt besmet op een moment dat
virusscanners "uw" virus nog niet herkennen!
+ U dient een actieve handeling uit te voeren om uw systeem te
beschermen: namelijk het uitvoeren van de virusscanner, iets
dat zelfs met TbScan tijd kost en dus vervelend is. Zeker
wanneer een PC door meerdere personen gebruikt wordt zoals in
bedrijfssituaties loopt een en ander nogal eens spaak.
Virussen worden steeds geavanceerder. Onder andere door de aandacht
die door de media aan het verschijnsel computervirus wordt
geschonken is er een ware sport onder zieke geesten ontstaan om
computervirussen te schrijven. Er zijn nu al virussen ontdekt die
geen vaste tekenreeks meer hebben. Doordat TbScan jokers in het
databestand toestaat kan TbScan dit soort virussen vaak nog wel
opsporen. Het duurt echter niet lang meer voor er virussen
rondwaren die in het geheel geen herkenningspunt meer bieden, en
dan biedt zelfs TbScan geen soelaas meer.
Ook zijn er reeds virussen die op dezelfde manier als TbScan het
DOS entry-point opzoeken, op een effectieve manier
beschermingsprogramma's omzeilend.
Ook het van een checksum voorzien van programma's is geen
oplossing: Virussen kunnen zodra een bestand wordt ingelezen deze
desinfecteren, zodat ieder besmet programma er uitziet als een niet
besmet exemplaar.
Er is echter EEN oplossing voor bovengenoemde problemen:
Thunderbyte!
Thunderbyte werd ontwikkeld om Personal Computers tegen
computervirussen, Trojan Horses, en andere bedreigingen van
kostbare gegevens te beschermen. Het is een hardwarematige
beveiliging, bestaande uit een insteekkaart, een installatie- en
configuratieprogramma, en een duidelijke handleiding. De werking
van Thunderbyte is niet gebaseerd op de kennis van specifieke
virussen, zodat Thunderbyte ook tegen toekomstige virussen
beschermt.
Een hardwarematige beveiliging biedt een bescherming die vele malen
groter is dan die van een softwarematige. Thunderbyte wordt al
actief nog voordat het besturingssysteem (DOS) wordt geladen, zodat
de computer direct na het inschakelen volledig is beschermd.
Door de ruime configuratiemogelijkheden en de intelligente
algoritmen wordt het gebruik van Thunderbyte nooit een last: in een
virusvrije omgeving zal er hoogst zelden iets van de aanwezigheid
van Thunderbyte worden gemerkt.
De voordelen van een hardwarematige beveiliging zijn:
+ De beveiliging gebruikt weinig (1Kb) RAM.
+ De beveiliging is al actief tijdens het opstarten van de PC,
beschermt daarom de PC ook tegen bootsectorvirussen. Dit is met
een softwarematige beveiliging per definitie NIET mogelijk,
simpelweg omdat een softwarematige beveiliging dan nog niet is
opgestart.
+ De beveiling is gegarandeerd actief VOORDAT een virus opgestart
kan worden, een softwarematige beveiliging heeft weinig nut als
het opgestart wordt nadat een virus reeds de controle over de
machine heeft overgenomen.
+ De vaste schijf van de PC kan niet meer rechtstreeks benaderd
worden. Dit omdat de bekabeling van de vaste schijf nu via de
Thunderbyte kaart loopt. Een softwarematige blokade tegen
formatteer- en schrijfacties kan altijd softwarematig omzeild
worden.
+ Het Thunderbyte systeem kan nooit vergeten worden op te
starten, zelfs niet indien de PC met behulp van een diskette
wordt opgestart.
Thunderbyte biedt u vele soorten bescherming:
+ Bescherming tegen gegevensverlies
Thunderbyte wordt aangesloten tussen de kabel van de vaste
schijf. Het bewaakt de vaste schijf tegen ongeoorloofd
formatteren. Thunderbyte detecteert bovendien alle rechstreekse
schijfoperaties die tot doel hebben gegevens te wijzigen c.q.
te verminken en controleert welk programma de opdracht voor die
operaties geeft. Alleen het besturingssysteem (DOS) is
zondermeer gerechtigd tot het uitvoeren van modificaties.
DOS heeft standaard al de mogelijkheid om bestanden tegen
overschrijven en modificeren te beschermen door middel van het
read-only attribuut. Deze bescherming is softwarematig echter
zeer eenvoudig uit te schakelen. Thunderbyte voorkomt evenwel
dat deze beveiliging ongemerkt ongedaan gemaakt kan worden,
zodat u uw bestanden nu toch via een standaard methode
doeltreffend kan beveiligen.
+ Bescherming tegen besmetting
Thunderbyte beschermt programma's (bestanden met de uitgang
"EXE", "COM", of "SYS") tegen besmetting, door ale modificaties
te beoordelen op hun bedoeling. De functionaliteit wordt
hierdoor niet beinvloed. Compileren, linken, e.d. worden
ongemoeid gelaten, en programma's die hun configuratie intern
bewaren worden ook niet beinvloed. Bovendien kan software
beveiligd worden met het read-only attribuut.
Wijzigingen in de bootsector worden ondervangen zodat ook de
zogevreesde bootsectorvirussen geen kans meer krijgen. Let wel:
softwarematig is de bootsector niet of nauwelijks te
beschermen. Thunderbyte wordt daartegen al actief nog voordat
het systeem probeert op te starten!
+ Detectie virussen
Thunderbyte detecteert de aanwezigheid van virussen, behalve op
de reeds genoemde manieren, ook doordat deze vaak een aantal
speciale handelingen uitvoeren; handelingen waar andere
programma's zich nooit zullen wagen. Zulke handelingen, zoals
het aanbrengen van een markering om reeds besmette programma's
te herkennen, worden gedetecteerd. Ook pogingen van een virus
om zich op een verdachte manier in het geheugen achter te laten
worden herkend, evenals abnormale manipulaties met
interruptvectoren.
+ Wachtwoordbescherming
Thunderbyte geeft u de mogelijkheid een wachtwoord te
installeren. U kunt twee soorten wachtwoorden opgeven: een
wachtwoord dat altijd gevraagd wordt, of een wachtwoord dat
slechts gevraagd wordt wanneer er gepoogd wordt van een
diskette in plaats van de vaste schijf op te starten.
+ Hoge veiligheid
Aan de veiligheid van Thunderbyte is ruime aandacht geschonken.
De programmacode van Thunderbyte bevindt zich in ROM en kan op
geen enkele manier worden gewijzigd.
Thunderbyte kan op geen enkele manier softwarematig worden
uitgeschakeld. Alle belangrijke instellingen worden
gerealiseerd met behulp van schakelaartjes op de insteekkaart.
En virussen kunnen, al hun verspilde intelligentie ten spijt,
nu eenmaal geen schakelaartjes omzetten of de uitlezing ervan
beinvloeden.
De virussen die de controller van de vaste schijf rechtstreeks
benaderen komen van een koude kermis thuis: Thunderbyte geeft
schrijfoperaties slechts door indien het schrijfcommando de
normale (gecontroleerde) weg heeft bewandeld.
Van Thunderbyte bestaan vele verschillende (doch functioneel
identieke) versies, die op basis van willekeur worden geleverd.
Hierdoor is kennis van 1 Thunderbyte systeem niet toereikend om
de beveiligende werking ervan aan te tasten of teniet te doen.
Thunderbyte controleert zijn eigen variabelen met een per verie
verschillend soort controlegetal. Ook de geheugenplaatsen waar
de variabelen worden bewaard is per Thunderbyte versie
verschillend.
+ Extra mogelijkheden
Thunderbyte biedt u een aantal interressante extra's, zoals
opstarten van drive B:, formatteren van 5,25" diskette's tot
428Kb op een normale XT.
Tot slot
--------
Verbaast u uzelf over de relatief grote kracht en inventiviteit van
zo'n kleine (6Kb) virusscanner? Schaf Thunderbyte aan, dan blijft u
uzelf verbazen!
Wanneer u het programma TbScan waardeert, of wanneer het u al eens
duidelijkheid heeft verschaft in een benarde situatie:
Stuur ons geen geld, maar schaf Thunderbyte aan!
NAMEN EN ADRESSEN
-----------------
Meer informatie over Thunderbyte kunt u aanvragen bij:
ESaSS B.V. Tel.: 080 - 238689
P.o. box 1380 Fax.: 080 - 228192
6501 BJ Nijmegen Data: 085 - 212395 (2:280/200 @fidonet)
TbScan is geschreven door Frans Veldman.
TbScan en de signature bestanden zijn beschikbaar op ESaSS /
Thunderbyte support BBS, Tel: 085-212395 (300/1200/2400 bps).
Wanneer u operator van een electronic mail systeem bent kunt u een
file-request sturen voor TbScan om de laatste versie van TBSCAN.COM
te krijgen, TBSCANX voor de laatste update van de
geheugen-residente automatische versie van TbScan, en VIRUSSIG voor
een kopie van de meest recente update van het signature-bestand.